Skip to content

Conversation

tanakamasayuki
Copy link

Added installation instructions for Arduino CLI using WinGet on Windows.

Please check if the PR fulfills these requirements

See how to contribute

  • The PR has no duplicates (please search among the Pull Requests
    before creating one)
  • The PR follows
    our contributing guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)
  • UPGRADING.md has been updated with a migration guide (for breaking changes)
  • configuration.schema.json updated if new parameters are added.

What kind of change does this PR introduce?

docs update.

Other information

image
arduino-cli version
winget install ArduinoSA.CLI
arduino-cli version

I tested the above command on Windows 11.
In PowerShell, the path will not be reflected unless you start a new shell.

Added installation instructions for Arduino CLI using WinGet on Windows.
@CLAassistant
Copy link

CLAassistant commented Sep 10, 2025

CLA assistant check
All committers have signed the CLA.

@per1234 per1234 self-assigned this Sep 10, 2025
@per1234 per1234 added type: enhancement Proposed improvement topic: documentation Related to documentation for the project topic: packaging Related to the release distribution package labels Sep 10, 2025
Copy link
Contributor

@per1234 per1234 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for taking the time to submit a pull request @tanakamasayuki.

We only list the installation methods that are officially maintained by the Arduino company. The Windows Package Manager package was created by a 3rd party without any involvement from us.

Because we do not maintain the package, we can not guarantee that it will be up to date. It is entirely up to the community to add new versions, and it is common for the community to not manage to keep packages up to date. And in fact this is exactly what has already happened. The latest version available from the Windows Package Manager is 1.2.2. We have made two additional releases which contain important enhancements and fixes since that time. So the use of winget to install Arduino CLI is actually harmful at this time.

For this reason, we are not able to accept your proposal for addition of this installation option to the official documentation.

@per1234 per1234 closed this Sep 10, 2025
@per1234 per1234 added the conclusion: declined Will not be worked on label Sep 10, 2025
@jo-chemla
Copy link

Sorry to revive a recently closed PR.

@per1234 Would the Arduino team be interested in having a github action workflow based on winget-releaser (based on Komac) to push every new Arduino CLI github-release to the winget package registry? It is the official windows package manager, comes pre-installed with every windows >= 11 fresh install, does make a lot of sense.

Note, in the meantime, I've created a cron running every night via a github action that pushes new arduino CLI releases to winget registry as soon as they are detected, so the discrepancy should be removed. Note it would still be preferable to have the core arduino team officially support publishing the package, especially given how straightforward it is with the below github action.

Uses winget-releaser Requires a Classic Github Personal Access Token with public_repo scope is created, following this link, then the Token can be added to the repo as a secret named WINGET_ACC_TOKEN. See below, that user also will have to fork the winget-pkgs repository.

Notes:
You will need to create a classic Personal Access Token (PAT) with public_repo scope. New fine-grained PATs aren't supported by the action. Review #172 for information.
Fork microsoft/winget-pkgs under the same account/organization as the project's repository. If you are forking winget-pkgs on a different account (e.g. bot/personal account), you can use the fork-user input to specify the username of the account where the fork is present.

name: Publish to WinGet
on:
  release:
    types: [ released ]
jobs:
  publish:
    runs-on: windows-latest
    steps:
      - uses: vedantmgoyal9/winget-releaser@main
        with:
          identifier: ArduinoSA.CLI
          token: ${{ secrets.WINGET_TOKEN }}
          installers-regex: '\.exe$'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
conclusion: declined Will not be worked on topic: documentation Related to documentation for the project topic: packaging Related to the release distribution package type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants